
#ifndef LAYOUTPANEL_H
#define LAYOUTPANEL_H

#include <BLineEdit>
#include <BCheckBox>
#include <BSpinBox>
#include <BGroupBox>
#include <BComboBox>
#include <BGridLayout>
#include <BTableWidget>
#include <BFloatSpinBox>
#include "PolicyMenu.h"

using namespace BWE;

class LayoutPanel : public BGroupBox
{
public:
	LayoutPanel(BWidget* parent = 0);

protected:
	void slotAssetChanged(BObject* object, const BValue& value);

	void slotNameEditFinished(BObject* object, const BValue& value);
	void slotEnabledToggled(BObject* object, const BValue& value);
	void slotSplitableToggled(BObject* object, const BValue& value);
	void slotMarginEditFinished(BObject* object, const BValue& value);
	void slotPartItemClicked(BObject* object, const BValue& value);

	void slotPolicyMenuTrigger();
	void slotStretchEditFinished();

private:
	BLineEdit*			_nameEdit;
	BCheckBox*			_enabledCheckBox;
	BCheckBox*			_splitableCheckBox;
	BLineEdit*			_marginEdit;
	BComboBox*			_partComboBox;
	
	BHolder<PolicyMenu>	_policyMenu;
	BFloatSpinBox*		_stretchSpinBox;
};

#endif
